The invention relates to a word recognition device and method.
As is known, for reading text, particularly hand-written text, various character recognition systems have been developed, based on text segmentation, to separate the individual characters or portions thereof one from another, and on processing of the segments obtained for the identification of the characters. This procedure outputs a series of characters including spaces and punctuation marks.
Current systems are not, however, always capable of outputting correct data because of the presence of noise, the particular graphical characteristics of the text or the limited capacities of the recognition system. Consequently, further processing of the characters is necessary so as to guarantee the correctness of the sequence of characters and the extraction of meaningful words.
For these reasons, word recognition devices have been proposed which compare the input word to be recognized with a plurality of words belonging to a vocabulary, until a word in the vocabulary which is identical to the word to be recognized is identified or the word in the vocabulary that is nearest to that to be recognized is identified. The comparison procedure, when carried out sequentially on the words in the vocabulary, requires a considerable amount of time.
An object of the invention is to produce a word recognition device and method capable of processing the input characters so as to output the word or words having the sequence of characters closest to the input word in a simple and speedy manner.
In a first embodiment, the invention includes a method having steps of selecting a dictionary of words and associating an analog weight with each character of an alphabet forming the words. The analog weights are such that equal analog weights correspond to identical characters. The method also includes steps of storing the analog weights in a first analog associative memory and dividing the words into groups. Each group corresponds to words having common lengths. The method additionally includes a step of transforming each word of each group of words via the analog weights stored in the first analog associative memory into a sequence of analog weights, to provide groups of analog weight sequences. Each group of analog weight sequences corresponds to one of the groups of words having common lengths. The method further includes steps of separating a second analog associative memory into portions and storing the groups of analog weight sequences in the second analog associative memory such that each group of words corresponds to only one of the portions in the second analog associative memory.
In a second preferred embodiment, the present invention includes a method having steps of receiving a character string corresponding to a word, determining a length of the character string and transforming the character string into a series of analog signals via analog weights stored in a first analog associative memory. Equal analog weights correspond to identical characters. The method also includes a step of coupling the series of analog signals to a portion of a second analog associative memory having a dictionary stored therein. Each word of the dictionary corresponds to an analog weight sequence stored in the second analog associative memory. The portion of the second analog associative memory stores words having lengths comparable to the length of the character string. The method additionally includes steps of computing distances between each analog weight sequence stored in the portion and the series of analog signals, selecting those distances that are less than a predetermined distance and writing data corresponding to those analog weight sequences providing distances less than the predetermined distance to a memory.